package com.xbchzh.clifford.base;

import java.util.List;

public interface BaseDao<T> {

	/**
	 * 保存实体
	 * 
	 * @param entity
	 */
	void save(T entity);

	/**
	 * 删除实体
	 * 
	 * @param id
	 */
	void delete(Integer id);
	/**
	 * 删除实体
	 * 
	 * @param id
	 */
	void delete(String id);

	/**
	 * 更新实体
	 * 
	 * @param entity
	 */
	void update(T entity);

	/**
	 * 查询实体
	 * 
	 * @param id
	 * @return
	 */
	T getById(Integer id);
	
	/**
	 * 查询实体
	 * 
	 * @param id
	 * @return
	 */
	T getById(String id);

	/**
	 * 获取集合
	 * 
	 * @param id
	 * @return
	 */
	List<T> getByIds(Integer[] id);

	/**
	 * 查詢集合
	 * 
	 * @param id
	 * @return
	 */
	List<T> findAll();

	/**
	 * 查询�?有未删除�?
	 * 
	 * @return
	 */
	List<T> findAllNotDelete();
}
